#include <iostream>
#include <string>
using namespace std;

class Person {
private:
    string name;
    int age;
public:
    Person(string n = "未知", int a = -1) : name(n), age(a) {}

    Person(const Person& p) {
        this->name = p.name;
        this->age = age;
    }

    ~Person() {}

    void showInfo() {
        cout << "[姓名：" << this->name << "，年龄：" << this->age << "]" << endl;
    }

    string getName() {
        return this->name;
    }

    void setName(string name) {
        this->name = name;
    }

    int getAge() {
        return this->age;
    }

    void setAge(int age) {
        this->age = age;
    }
};


class Student : public Person {
private:
    int studentNumber;
public:
    Student(string n = "未知", int a = -1, int stuNum = -1) : Person(n, a), studentNumber(stuNum) {}
    // Student(const Student& s) : Person(s.name, s.age),  {
    // }
    ~Student() {}

    void showInfo() {
        cout << "[姓名：" << this->getName() << "，年龄：" << this->getAge() << "，学号：" << this->studentNumber << "]" << endl;
    }
};